package zasm.zasm.listing;

import java.io.Closeable;
import java.io.Flushable;
import java.io.IOException;
import java.util.Iterator;

public interface ListingWriter extends Closeable, Flushable {

	public void pushFile(String filename);

	public void popFile();

	public void setLineNumber(int line);

	public void setOrigin(int origin);

	public void write(String in, byte[] out) throws IOException;

	public void write(Iterable<String> in, byte[] out) throws IOException;

	public void write(Iterator<String> in, byte[] out) throws IOException;

}
